Lars Ingebrigtsen [Tue, 9 Jul 2019 02:50:37 +0000 (04:50 +0200)]
Make delimit-columns-region say what it does
* lisp/delim-col.el (delimit-columns-region): Make the doc string
say a bit more about what it does (bug#35651).
(delimit-columns-rectangle): Refer to the first function.
Katsumi Yamaoka [Tue, 9 Jul 2019 02:01:26 +0000 (04:01 +0200)]
Allow using @@ in @uref in texinfo
* lisp/textmodes/texinfmt.el (texinfo-format-uref): Allow using @@
in @uref (bug#36186) to allow things like
@uref{mailto:foo@@example.com}.
Lars Ingebrigtsen [Tue, 9 Jul 2019 01:56:02 +0000 (03:56 +0200)]
Tweak compilation face in the wheatgrass theme
* etc/themes/wheatgrass-theme.el: The compilation info was too
light to be readable (bug#36203).
Lars Ingebrigtsen [Tue, 9 Jul 2019 01:44:06 +0000 (03:44 +0200)]
Don't set url-mime-charset-string from set-language-environment
* lisp/url/url-vars.el (url-set-mime-charset-string): Make
obsolete and don't add to set-language-environment-hook
(bug#36268). If you loaded url-vars before calling
set-language-environment, you would suddenly get an unusable long
url-mime-charset-string.
Lars Ingebrigtsen [Tue, 9 Jul 2019 01:34:15 +0000 (03:34 +0200)]
Remove compat code in url-mime-charset-string
* lisp/url/url-vars.el (url-mime-charset-string): Remove compat code.
Lars Ingebrigtsen [Tue, 9 Jul 2019 01:25:42 +0000 (03:25 +0200)]
Tweak messaging in re-builder
* lisp/emacs-lisp/re-builder.el (reb-copy): Say what we copied to
the kill ring.
Lars Ingebrigtsen [Mon, 8 Jul 2019 23:27:33 +0000 (01:27 +0200)]
Mention {la,}tex-run-command in the TeX Print info node
* doc/emacs/text.texi (TeX Print): Mention {la,}tex-run-command,
too. Suggested by Sebastian Urban (bug#36400).
Paul Eggert [Tue, 9 Jul 2019 00:50:39 +0000 (17:50 -0700)]
Avoid some unnecessary stdio.h includes
* src/atimer.c, src/callproc.c, src/coding.c, src/dired.c, src/eval.c:
* src/fringe.c, src/ftcrfont.c, src/ftfont.c, src/ftxfont.c:
* src/gfilenotify.c, src/indent.c, src/kqueue.c, src/menu.c:
* src/scroll.c, src/terminal.c, src/unexcoff.c, src/window.c:
* src/xfont.c, src/xftfont.c:
Do not include stdio.h since it is unused.
Paul Eggert [Tue, 9 Jul 2019 00:50:39 +0000 (17:50 -0700)]
Use fewer locks when accessing stdio
* src/alloc.c, src/bidi.c, src/emacs-module.c, src/pdumper.c:
* src/regex-emacs.c, src/unexhp9k800.c, src/unexmacosx.c:
* src/widget.c, src/xdisp.c, src/xselect.c, src/xterm.c:
Include sysstdio.h instead of stdio.h, to avoid locking
stdio streams in many cases.
* src/alloc.c (test_setjmp):
* src/bidi.c (bidi_dump_cached_states):
* src/cm.c (calccost):
* src/dispnew.c (init_display_interactive):
* src/emacs.c (main):
* src/image.c (convert_mono_to_color_image):
* src/minibuf.c (read_minibuf_noninteractive):
* src/nsfont.m (ns_descriptor_to_entity)
(ns_dump_glyphstring):
* src/nsterm.h (NSTRACE_MSG_NO_DASHES):
* src/nsterm.m (ns_mouse_position)
(sendEvent:, keyDown:, performDragOperation:):
* src/pdumper.c (dump_fingerprint, print_paths_to_root_1):
* src/print.c (debug_print):
* src/regex-emacs.c (debug_putchar, print_fastmap)
(print_partial_compiled_pattern, print_compiled_pattern)
(print_double_string, regex_compile):
* src/term.c (vfatal):
* src/unexhp9k800.c (read_header):
* src/unexmacosx.c (unexec_error):
* src/widget.c (EmacsFrameInitialize):
* src/xdisp.c (message_to_stderr, vmessage, dump_glyph_row)
(Fdump_glyph_matrix, Fdump_frame_glyph_matrix, dump_glyph_string):
* src/xfaces.c (Fdump_colors, Fdump_face):
* src/xselect.c (x_clipboard_manager_error_2):
* src/xterm.c (x_initialize):
* src/xwidget.c (WEBKIT_FN_INIT):
Prefer unlocked calls like fputs to locked calls like fprintf.
* src/charset.c (read_hex):
* src/cm.c (cmputc, cmcheckmagic):
* src/dispnew.c (update_frame, update_frame_with_menu)
(update_frame_1, Fsend_string_to_terminal, Fding)
(bitch_at_user):
* src/emacs.c (main, Fdump_emacs):
* src/emacs-module.c (module_abort):
* src/fileio.c (Fdo_auto_save):
* src/image.c (slurp_file)
(png_read_from_file, png_load_body, our_stdio_fill_input_buffer):
* src/keyboard.c (record_char, kbd_buffer_get_event)
(handle_interrupt):
* src/lread.c (readbyte_from_stdio, read1):
* src/minibuf.c (read_minibuf_noninteractive):
* src/print.c (printchar_to_stream, strout)
(Fredirect_debugging_output):
* src/sysdep.c (reset_sys_modes, close_output_streams)
(procfs_ttyname, procfs_get_total_memory):
* src/term.c (tty_ring_bell, tty_send_additional_strings)
(tty_set_terminal_modes, tty_reset_terminal_modes)
(tty_update_end, tty_clear_end_of_line, tty_write_glyphs)
(tty_write_glyphs_with_face, tty_insert_glyphs)
(tty_menu_activate):
* src/xfaces.c (Fx_load_color_file):
Simplify by using ordinary calls like putc to explicitly-unlocked
calls like putc_unlocked, since the ordinary calls are now
unlocked anyway.
* src/emacs.c (main, Fdump_emacs):
* src/pdumper.c (Fdump_emacs_portable):
Coalesce adjacent printfs.
* src/nsterm.h: Include sysstdio.h as this file’s macros rely on it.
* src/regex-emacs.c (print_compiled_pattern):
Omit redundant fflush.
* src/sysstdio.h: Include unlocked-io.h.
(clearerr_unlocked, feof_unlocked, ferror_unlocked)
(fflush_unlocked, fgets_unlocked, fputc_unlocked)
(fputs_unlocked, fread_unlocked, fwrite_unlocked)
(getc_unlocked, getchar_unlocked, putc_unlocked)
(putchar_unlocked): Remove these macros; now done by unlocked-io.h.
* src/xwidget.c: Include sysstdio.h.
Basil L. Contovounesios [Mon, 8 Jul 2019 20:05:14 +0000 (21:05 +0100)]
Tidy up sieve.el text formatting
* lisp/net/sieve.el (sieve-edit-script, sieve-upload): Do not pass
arbitrary string as first argument to 'message' (bug#25764).
(sieve-help): Split long string across multiple lines.
(sieve-refresh-scriptlist): Use ngettext. Fix grammar.
Stefan Kangas [Mon, 8 Jul 2019 22:50:41 +0000 (00:50 +0200)]
Delegate to rectangle version in delim-col when appropriate
* lisp/delim-col.el (delimit-columns-region): Delegate to
`delimit-columns-rectangle' when called with a rectangular
region (bug#36453).
Ismail S [Mon, 8 Jul 2019 20:56:55 +0000 (22:56 +0200)]
Fix minor typo in org-capture-templates
* lisp/org/org-capture.el (org-capture-templates): Fix typo in doc
string (bug#36491).
Copyright-paperwork-exempt: yes
Ken Brown [Mon, 8 Jul 2019 22:37:33 +0000 (18:37 -0400)]
Ensure that expand-file-name returns an absolute file name
* src/fileio.c (Fexpand_file_name): Don't directly use the current
buffer's default-directory if it is relative. Instead replace it
by its expansion relative to invocation-directory. (Bug#36502)
* test/src/fileio-tests.el
(fileio-tests--relative-default-directory): New test.
Noam Postavsky [Mon, 8 Jul 2019 22:06:21 +0000 (18:06 -0400)]
Turn off bytecode jumptables to avoid Bug#36447
* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-use-jump-table): Set
to nil. We can turn this back on again when Bug#36447 is solved and
we handle dumped hash tables correctly.
Lars Ingebrigtsen [Mon, 8 Jul 2019 20:32:36 +0000 (22:32 +0200)]
Remove mention of :group in define-minor-mode info
* doc/lispref/modes.texi (Defining Minor Modes): The :group stuff
in the example and documentation isn't correct since this is not a
global mode and `hunger-mode' therefore isn't customizable
(bug#36501).
Eric Abrahamsen [Mon, 8 Jul 2019 17:53:07 +0000 (10:53 -0700)]
Improvements to sieve script usability
* lisp/net/sieve-mode.el (sieve-mode-menu): Add
`sieve-upload-and-kill' to the mode menu.
* lisp/net/sieve.el (sieve-manage-mode-menu): Add `sieve-manage-quit'
to the mode menu.
(sieve-help): Mention quitting in mode help.
(sieve-manage-mode): Directly derive from special-mode.
(sieve-edit-script): Start off with unmodified buffer.
(sieve-upload): Set buffer unmodified after successful upload.
Changes are aimed at 1) increasing discoverability of commands and 2)
using buffer modification to help users understand what's happening.
Eric Abrahamsen [Sun, 7 Jul 2019 23:25:14 +0000 (16:25 -0700)]
Make sure gnus-group-set-info sets both the hashtable and alist
* lisp/gnus/gnus-group.el (gnus-group-set-info): Apparently this
method of updating the group info will only apply to the
gnus-newsrc-hashtb, not gnus-newsrc-alist. Do the alist explicitly.
Michael Albinus [Mon, 8 Jul 2019 14:46:29 +0000 (16:46 +0200)]
* doc/misc/tramp.texi (Remote processes): Fix a typo.
Alan Mackenzie [Mon, 8 Jul 2019 12:43:18 +0000 (12:43 +0000)]
Fix coding error in c-forward-decl-or-cast-1. This fixes bug #36492.
* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): While testing for,
e.g., foo(), check we've found the ( before trying to go to its position.
Michael Albinus [Mon, 8 Jul 2019 12:03:17 +0000 (14:03 +0200)]
Allow chown/chgrp for remote directories on w32
* lisp/dired-aux.el (dired-do-chgrp, dired-do-chown):
Allow them for remote directories, even when run on w32. See
<https://emacs.stackexchange.com/questions/51477/chown-with-dired-over-tramp-from-windows-machine>.
Alan Mackenzie [Mon, 8 Jul 2019 09:24:29 +0000 (09:24 +0000)]
Fix bug #36474, such that CC Mode quotes work properly in electric-pair-mode
Also finishes the fix for bug #36423.
* lisp/progmodes/cc-mode.el (c-initialize-cc-mode): Add an `eval-after-load'
to set electric-pair-inhibit-predicate for existing CC Mode buffers when
elec-pair.elc gets loaded.
(c-basic-common-init): Set electric-pair-inhibit-predicate when a CC Mode mode
gets initialized.
(c-electric-pair-inhibit-predicate): New function.
Paul Eggert [Mon, 8 Jul 2019 06:22:11 +0000 (23:22 -0700)]
* src/xselect.c: Fix comment.
Paul Eggert [Mon, 8 Jul 2019 02:56:31 +0000 (19:56 -0700)]
* src/dispnew.c (init_display_interactive): Fix comment to match code.
Juri Linkov [Sun, 7 Jul 2019 22:54:29 +0000 (01:54 +0300)]
* lisp/vc/vc-dir.el (vc-dir-view-file): New command for consistency with dired
* lisp/vc/vc-git.el (vc-git-log-incoming, vc-git-log-outgoing):
Remove interactive spec from non-command functions. (Bug#12492)
Juri Linkov [Sun, 7 Jul 2019 22:35:35 +0000 (01:35 +0300)]
Handle scroll-error-top-bottom in follow.el and view.el (bug#21893)
* lisp/follow.el (follow-scroll-up-arg, follow-scroll-up-window):
Use scroll-up-command instead of scroll-up.
(follow-scroll-down-arg, follow-scroll-down-window):
Use scroll-down-command instead of scroll-down.
(follow-scroll-up, follow-scroll-down): Handle scroll-error-top-bottom.
* lisp/view.el (view-scroll-lines): Use scroll-down-command
instead of scroll-down and scroll-up-command instead of scroll-up.
(view-really-at-end): Handle scroll-error-top-bottom.
Juri Linkov [Sun, 7 Jul 2019 22:18:07 +0000 (01:18 +0300)]
* lisp/replace.el (perform-replace): Move save-match-data here
from replace-highlight for isearch-lazy-highlight-new-loop (bug#36328).
Glenn Morris [Sun, 7 Jul 2019 21:22:23 +0000 (14:22 -0700)]
Avoid makeinfo error "@code expected braces"
* doc/lispref/searching.texi (Rx Constructs): Fix for makeinfo 4.13.
Paul Eggert [Sun, 7 Jul 2019 19:38:19 +0000 (12:38 -0700)]
Fix typo in previous patch
* src/editfns.c (styled_format): Fix stray ‘pMd’.
Paul Eggert [Sun, 7 Jul 2019 19:29:27 +0000 (12:29 -0700)]
Remove printmax_t etc.
printmax_t etc. were needed only for platforms that lacked
support for printing intmax_t. These platforms are now so
obsolete that they are no longer practical porting targets.
* src/image.c (gs_load): Fix unlikely buffer overrun
discovered while making these changes. It was introduced in
2011-07-17T00:34:43!eggert@cs.ucla.edu.
* src/lisp.h (printmax_t, uprintmax_t, pMd, pMu, pMx):
Remove. All uses replaced by their standard counterparts
intmax_t, uintmax_t, PRIdMAX, PRIuMAX, PRIxMAX.
Nick Drozd [Sat, 6 Jul 2019 12:02:37 +0000 (14:02 +0200)]
Handle 'abbr' and 'acronym' tags in shr.el
* lisp/net/shr.el (shr-tag-abbr, shr-tag-acronym): New functions
handling 'abbr' and 'acronym' tags, respectively.
* etc/NEWS: Announce change in shr behavior (bug#36475).
Mattias Engdegård [Sat, 6 Jul 2019 11:22:15 +0000 (13:22 +0200)]
Shorter `rx' doc string (bug#36496)
* lisp/emacs-lisp/rx.el (rx): Replace long description with a condensed
summary of the rx syntax, with reference to the manual section.
Mattias Engdegård [Thu, 4 Jul 2019 11:01:52 +0000 (13:01 +0200)]
Describe the rx notation in the elisp manual (bug#36496)
The additions are excluded from the print version to avoid making it
thicker.
* doc/lispref/elisp.texi (Top): New menu entry.
* doc/lispref/searching.texi (Regular Expressions): New menu entry.
(Regexp Example): Add rx form of the example.
(Rx Notation, Rx Constructs, Rx Functions): New nodes.
* doc/lispref/control.texi (pcase Macro): Describe the rx pattern.
Paul Eggert [Sun, 7 Jul 2019 00:41:52 +0000 (17:41 -0700)]
Don’t ignore stderr failure when ADDRESS_SANITIZER
* src/emacs.c (close_output_streams): Move from here ...
* src/sysdep.c: ... to here, where it really belongs anyway.
When ADDRESS_SANITIZER, fflush stderr and check for ferror,
to catch stderr output errors even in this case.
Stefan Monnier [Sat, 6 Jul 2019 22:42:02 +0000 (18:42 -0400)]
* lisp/emacs-lisp/nadvice.el: Make it a package separate from `emacs`.
* lisp/finder.el (finder-compile-keywords): Grab version from
package--builtin-versions when available.
Glenn Morris [Sat, 6 Jul 2019 19:52:12 +0000 (12:52 -0700)]
Merge from origin/emacs-26
1e6d8e0 (origin/emacs-26) ; * doc/emacs/killing.texi (Secondary Selec...
e2344a7 * lisp/svg.el, lisp/progmodes/ada-mode.el: Fix bug#36360.
ff738ab Minor copyedit of "Font Lock" in user manual
faf99dc Improve description of image descriptors
21351cc ; * src/lread.c (Fread): Make the comment wording more accurate.
d176090 Improve documentation of secondary selections
8910fe1 * src/fns.c (Fmapconcat): Doc fix. (Bug#36418)
# Conflicts:
# lisp/svg.el
Glenn Morris [Sat, 6 Jul 2019 19:51:30 +0000 (12:51 -0700)]
; Merge from origin/emacs-26
The following commit was skipped:
f0db687 Avoid crash inside CFCharacterSetIsLongCharacterMember (Bug#3...
Glenn Morris [Sat, 6 Jul 2019 19:51:30 +0000 (12:51 -0700)]
Merge from origin/emacs-26
e97c043 Fix python.el docstring (Bug#36458)
e660801 ; Add thing-at-point-looking-at test (Bug#35708)
f5b4846 ; Fix typo, insure -> ensure in ChangeLogs
cb8fb59 * lisp/hi-lock.el (hi-lock-line-face-buffer): Doc fix. (Bug3...
Glenn Morris [Sat, 6 Jul 2019 19:51:30 +0000 (12:51 -0700)]
; Merge from origin/emacs-26
The following commit was skipped:
dc5ed2c (emacs-26) ; Auto-commit of loaddefs files.
Glenn Morris [Sat, 6 Jul 2019 19:51:30 +0000 (12:51 -0700)]
Merge from origin/emacs-26
316f5a3 Fix typo in doc string of file-exists-p (bug#36408)
bfc7c6e * test/lisp/url/url-file-tests.el (url-file): Fix for POSIX f...
13b95e1 Fix typo in windows.texi
8b775c3 Clarify & update (elisp) Writing Emacs Primitives
7648c12 Clarify a subtle issue in the Internals chapter of lispref
Xu Chunyang [Sun, 30 Jun 2019 04:30:22 +0000 (12:30 +0800)]
* lisp/dom.el (dom-texts): Simplify (Bug#36441).
Noam Postavsky [Sat, 28 Oct 2017 19:48:17 +0000 (15:48 -0400)]
Use buffer's name for help-mode bookmarks (Bug#24573)
* lisp/help-mode.el (help-bookmark-make-record): Replace buffer
objects with their names in help-args, otherwise the bookmark won't be
readable from the bookmark save file.
Noam Postavsky [Sat, 6 Jul 2019 02:26:13 +0000 (22:26 -0400)]
Add commentary about #$ in autoload files
* lisp/emacs-lisp/autoload.el (autoload-rubric): Add commentary about
`#$' trick.
Eli Zaretskii [Sat, 6 Jul 2019 18:33:45 +0000 (21:33 +0300)]
; * doc/emacs/killing.texi (Secondary Selection): Fix last change.
Wilson Snyder [Sat, 6 Jul 2019 17:33:59 +0000 (13:33 -0400)]
Fix indentation of default clocking definitions.
* verilog-mode.el (verilog-default-clocking-re): Fix indentation of default
clocking definitions, Verilog-Mode bug1457. Reported by Paul Donahue.
Wilson Snyder [Sat, 6 Jul 2019 17:27:13 +0000 (13:27 -0400)]
Backout replacing manually crafted hex regexes with [:xdigit:].
* lisp/progmodes/verilog-mode.el (verilog-delay-re):
(verilog-type-font-keywords, verilog-read-always-signals-recurse):
(verilog-is-number): Backout replacing manually crafted hex regexes with
[:xdigit:] (Bug#36167). This repairs Verilog-mode regressions;
Verilog-mode maintains back-compatibility with Emacsen before this syntax
was supported.
Pip Cet [Sat, 6 Jul 2019 15:21:04 +0000 (15:21 +0000)]
Update current buffer when changing text properties
* src/textprop.c (add_text_properties_1, set_text_properties)
(set_text_properties_1, Fremove_text_properties): Switch buffer if
necessary. (Bug#36190)
* doc/lispref/text.texi (Examining Properties): Document performance
FIXME.
Stefan Monnier [Sat, 6 Jul 2019 16:16:24 +0000 (12:16 -0400)]
* lisp/svg.el, lisp/progmodes/ada-mode.el: Fix bug#36360.
Tell package.el their version number, for better behavior w.r.t the
versions available in GNU ELPA
Paul Eggert [Sat, 6 Jul 2019 15:54:24 +0000 (08:54 -0700)]
Update from Gnulib
This incorporates:
2019-07-06 thread, lock, cond, tls: Remove support for Pth threads
2019-07-02 verify: document ‘assume’ better
2019-06-30 Include <stdlib.h> when needed
2019-06-30 inet_ntop, inet_pton: Avoid conflict with native Windows
* build-aux/config.sub, lib/faccessat.c, lib/fcntl.c, lib/fstatat.c:
* lib/readlinkat.c, lib/verify.h, m4/pthread_sigmask.m4:
* m4/sys_socket_h.m4: Copy from Gnulib.
* lib/gnulib.mk.in: Regenerate.
Paul Eggert [Sat, 6 Jul 2019 14:48:15 +0000 (07:48 -0700)]
Fix [[:xdigit:]] glitch on Solaris
* admin/charsets/mapconv: Revert this [[:xdigit:]] change.
Solaris 10 ‘sed’ does not support [[:xdigit:]].
Drew Adams [Sat, 6 Jul 2019 14:47:08 +0000 (16:47 +0200)]
Tweak point movement in view-echo-area-messages
* lisp/help.el (view-echo-area-messages): Move the point to the
end of the *Messages* buffer even if it's already displayed
(bug#36343).
Stefan Kangas [Sat, 6 Jul 2019 14:37:09 +0000 (16:37 +0200)]
Remove outdated comment in uniquify.el
* lisp/uniquify.el: Remove outdated comment regarding some ancient
version of uniquify.el (bug#36384).
Stefan Kangas [Sat, 6 Jul 2019 14:35:52 +0000 (16:35 +0200)]
Improve an error message in bookmark.el
* lisp/bookmark.el (bookmark-alist-from-buffer): Improve error
message (bug#36391).
Basil L. Contovounesios [Sat, 6 Jul 2019 14:34:10 +0000 (16:34 +0200)]
Improve Gnus ephemeral bug group browsing
* doc/misc/gnus.texi (Foreign Groups): Update description of
gnus-read-ephemeral-emacs-bug-group for multiple bug
IDs (bug#11961).
* lisp/gnus/gnus-group.el (gnus-bug-group-download-format-alist):
Use HTTPS for Debian's bug tracker.
(gnus-group--read-bug-ids): New function for reading multiple bug
IDs in the minibuffer. Improves on previous brittle approach of
word-at-point -> read-string -> string-to-number by a) defaulting to
the more accurate bug-reference-bug-regexp or number-at-point
without using the intrusive INITIAL-INPUT argument, and b) not
attempting to parse bug IDs.
(gnus-read-ephemeral-bug-group): Use it. Extend docstring and
commentary. Fix handling of multiple bug IDs as either numbers or
strings. Hoist some string consing out of inner loop. Delete
temporary file even on error. Throw more informative error when
url-insert-file-contents successfully returns an error (bug#36433).
(gnus-read-ephemeral-debian-bug-group): Use gnus-group--read-bug-ids
and fix docstring for multiple bug IDs. Accept optional WINDOW-CONF
like other ephemeral bug group commands.
(gnus-read-ephemeral-emacs-bug-group): Use gnus-group--read-bug-ids
and fix string/numeric ID conversions. Try loading debbugs-gnu
before testing for debbugs-gnu-summary-mode (bug#36433).
Stefan Kangas [Sat, 6 Jul 2019 14:27:05 +0000 (16:27 +0200)]
Add tests for text-property-search to check prop-match-value
* test/lisp/emacs-lisp/text-property-search-tests.el
(with-match-test): New macro.
(text-property-search-forward-prop-match-match-face-nil-nil)
(text-property-search-forward-prop-match-match-face-bold-t)
(text-property-search-forward-prop-match-match-face-bold-nil)
(text-property-search-backward-prop-match-match-face-nil-nil)
(text-property-search-backward-prop-match-match-face-italic-t)
(text-property-search-backward-prop-match-match-face-italic-nil):
Add test cases to also verify the value of prop-match-value
(bug#36486).
Eli Zaretskii [Sat, 6 Jul 2019 14:25:46 +0000 (17:25 +0300)]
Minor copyedit of "Font Lock" in user manual
* doc/emacs/display.texi (Font Lock): Make the wording about
"enabling Font Lock" crystal clear. (Bug#36529)
Eli Zaretskii [Sat, 6 Jul 2019 12:32:20 +0000 (15:32 +0300)]
Improve description of image descriptors
* doc/lispref/display.texi (Image Descriptors): More accurate
description of where image files are looked up. (Bug#36523)
Eli Zaretskii [Sat, 6 Jul 2019 11:49:23 +0000 (14:49 +0300)]
Improve the default value of 'doc-view-ghostscript-program'
* lisp/doc-view.el (doc-view-ghostscript-program): Make the
default value dependent on the underlying OS. (Bug#36357)
Stefan Kangas [Sun, 30 Jun 2019 17:17:52 +0000 (19:17 +0200)]
Make "M-x pdb" use "[:graph:]" to match file names
* lisp/progmodes/gud.el (gud-pdb-marker-regexp): Use "[:graph:]" to
match file name in prompt. (Bug#34489)
Stefan Kangas [Fri, 5 Jul 2019 14:29:32 +0000 (16:29 +0200)]
* lisp/net/goto-addr.el: Remove leftover XEmacs compat code. (Bug#36512)
Stefan Kangas [Tue, 2 Jul 2019 05:09:13 +0000 (07:09 +0200)]
* lisp/bookmark.el (bookmark-set-internal): Doc fix. (Bug#25032)
Stefan Kangas [Mon, 1 Jul 2019 17:56:00 +0000 (19:56 +0200)]
* lisp/bookmark.el (bookmark-quit-flag): Mark unused variable obsolete.
(Bug#36460)
Stefan Kangas [Mon, 1 Jul 2019 17:10:36 +0000 (19:10 +0200)]
Prefer progress-reporter to 'message' in bookmark.el
* lisp/bookmark.el (bookmark-upgrade-file-format-from-0)
(bookmark-bmenu-execute-deletions): Use progress-reporter.
(Bug#36462)
Eli Zaretskii [Sat, 6 Jul 2019 08:40:49 +0000 (11:40 +0300)]
; * src/lread.c (Fread): Make the comment wording more accurate.
Eli Zaretskii [Sat, 6 Jul 2019 08:30:35 +0000 (11:30 +0300)]
Improve documentation of secondary selections
* doc/emacs/killing.texi (Secondary Selection): Improve
wording. Mention that 'M-mouse-1' can be used to cancel
secondary selections. (Bug#36365)
Konstantin Kharlamov [Thu, 13 Jun 2019 00:18:43 +0000 (03:18 +0300)]
Replace manually crafted hex regexes with [:xdigit:]
* admin/charsets/mapconv:
* build-aux/gitlog-to-changelog (parse_amend_file, git_dir_option):
* lisp/progmodes/verilog-mode.el (verilog-delay-re):
(verilog-type-font-keywords, verilog-read-always-signals-recurse):
(verilog-is-number):
* lisp/progmodes/vera-mode.el (vera-font-lock-keywords):
* test/src/emacs-module-tests.el (mod-test-sum-test):
* lisp/xml.el: (xml--entity-replacement-text):
* lisp/version.el (emacs-repository-version-git):
* lisp/textmodes/sgml-mode.el (sgml-quote):
* lisp/textmodes/css-mode.el (css-escapes-re)
(css--colors-regexp):
* lisp/progmodes/prolog.el (prolog-syntax-propertize-function):
* lisp/progmodes/hideif.el (hif-token-regexp, hif-tokenize):
* lisp/progmodes/ebnf-dtd.el: (ebnf-dtd-attlistdecl)
(ebnf-dtd-entitydecl, ebnf-dtd-lex):
* lisp/progmodes/ebnf-ebx.el (ebnf-ebx-hex-character):
* lisp/progmodes/ebnf-abn.el (ebnf-abn-character):
* lisp/progmodes/cperl-mode.el (cperl-highlight-charclass)
(cperl-find-pods-heres):
* lisp/progmodes/cc-mode.el (c-maybe-quoted-number-head)
(c-maybe-quoted-number, c-parse-quotes-before-change)
(c-parse-quotes-after-change, c-quoted-number-head-before-point)
(c-quoted-number-straddling-point):
* lisp/progmodes/ada-mode.el (featurep, ada-in-numeric-literal-p)
(ada-font-lock-keywords):
* lisp/org/org-mobile.el (org-mobile-copy-agenda-files)
* lisp/org/org-table.el (org-table-number-regexp):
(org-mobile-update-checksum-for-capture-file):
* lisp/nxml/xsd-regexp.el (xsdre-gen-categories):
* lisp/nxml/xmltok.el (let*):
* lisp/nxml/rng-xsd.el (rng-xsd-convert-hex-binary)
(rng-xsd-convert-any-uri):
* lisp/nxml/rng-uri.el (rng-uri-file-name-1)
(rng-uri-unescape-multibyte, rng-uri-unescape-unibyte)
(rng-uri-unescape-unibyte-match)
(rng-uri-unescape-unibyte-replace):
* lisp/nxml/rng-cmpct.el (rng-c-process-escapes):
* lisp/nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
* lisp/net/shr-color.el (shr-color->hexadecimal):
* lisp/mail/rfc2231.el (rfc2231-decode-encoded-string):
* lisp/international/mule-cmds.el (read-char-by-name):
* lisp/htmlfontify.el (hfy-hex-regex):
* lisp/gnus/nneething.el (nneething-decode-file-name):
* lisp/gnus/mml-sec.el (mml-secure-find-usable-keys):
* lisp/gnus/gnus-art.el (gnus-button-mid-or-mail-heuristic-alist):
* lisp/faces.el (read-color):
* lisp/epg.el (epg--status-ERRSIG, epg--status-VALIDSIG)
(epg--status-SIG_CREATED, epg--decode-percent-escape)
(epg--decode-hexstring, epg--decode-quotedstring)
(epg-dn-from-string):
* lisp/emulation/cua-rect.el (cua-incr-rectangle):
* lisp/dnd.el (dnd-unescape-uri):
* lisp/cedet/semantic/lex.el (semantic-lex-number-expression):
* lisp/cedet/semantic/java.el (semantic-java-number-regexp):
* lisp/calc/calc-lang.el (pascal):
* lisp/calc/calc-ext.el (math-read-number-fancy):
* lisp/calc/calc-aent.el (math-read-token):
Replace various combinations of [0-9a-fA-F] with [[:xdigit:]].
(Bug#36167)
Eli Zaretskii [Sat, 6 Jul 2019 07:31:06 +0000 (10:31 +0300)]
* src/fns.c (Fmapconcat): Doc fix. (Bug#36418)
YAMAMOTO Mitsuharu [Sat, 6 Jul 2019 05:35:00 +0000 (14:35 +0900)]
Add HarfBuzz fallbacks for libotf functions used in ftfont_list
* src/ftfont.c [!HAVE_LIBOTF && HAVE_HARFBUZZ]: Include hb-ot.h.
(OTF, OTF_tag) [!HAVE_LIBOTF && HAVE_HARFBUZZ]: New typedefs.
(hbotf_open, hbotf_check_features) [!HAVE_LIBOTF && HAVE_HARFBUZZ]: New
functions.
(OTF_open, OTF_close, OTF_check_features) [!HAVE_LIBOTF && HAVE_HARFBUZZ]:
New macros.
(ftfont_list) [!HAVE_LIBOTF && HAVE_HARFBUZZ]: Use them.
YAMAMOTO Mitsuharu [Sat, 6 Jul 2019 05:24:34 +0000 (14:24 +0900)]
Avoid crash inside CFCharacterSetIsLongCharacterMember (Bug#36507)
* src/macfont.m (macfont_supports_charset_and_languages_p)
(macfont_has_char): Don't pass integers outside the Unicode codespace to
CFCharacterSetIsLongCharacterMember. Do not merge to master.
YAMAMOTO Mitsuharu [Sat, 6 Jul 2019 05:08:47 +0000 (14:08 +0900)]
Avoid crash inside CFCharacterSetIsLongCharacterMember
* src/macfont.m (macfont_supports_charset_and_languages_p)
(macfont_has_char): Don't pass integers outside the Unicode codespace to
CFCharacterSetIsLongCharacterMember.
Noam Postavsky [Sat, 6 Jul 2019 01:34:16 +0000 (21:34 -0400)]
Fix python.el docstring (Bug#36458)
* lisp/progmodes/python.el (python-shell--prompt-calculated-output-regexp):
python-shell-set-prompt-regexp doesn't exist, presumably
python-shell-prompt-set-calculated-regexps was meant.
Noam Postavsky [Mon, 13 May 2019 12:39:00 +0000 (08:39 -0400)]
; Add thing-at-point-looking-at test (Bug#35708)
* test/lisp/thingatpt-tests.el (thing-at-point-looking-at): New test.
Noam Postavsky [Thu, 30 May 2019 12:16:46 +0000 (08:16 -0400)]
; Fix typo, insure -> ensure in ChangeLogs
Juri Linkov [Fri, 5 Jul 2019 19:11:34 +0000 (22:11 +0300)]
* lisp/replace.el (replace-highlight): Add save-match-data (bug#36328)
* lisp/term/tty-colors.el (tty-color-canonicalize):
Replace string-match with string-match-p.
Thanks to Jayden Navarro <jayden@yugabyte.com> and Alan Mackenzie <acm@muc.de>
Juri Linkov [Thu, 4 Jul 2019 22:01:01 +0000 (01:01 +0300)]
* lisp/minibuffer.el (minibuffer-message-properties): New variable.
(minibuffer-message): Use it to propertize message unless already
propertized by the caller.
* lisp/simple.el (minibuffer-error-function): Propertize the error.
* lisp/isearch.el (isearch-message-properties): New variable.
(isearch--momentary-message, isearch-message-prefix)
(isearch-message-suffix): Use it. (Bug#21112)
Juri Linkov [Thu, 4 Jul 2019 20:49:33 +0000 (23:49 +0300)]
* lisp/char-fold.el (char-fold-to-regexp): Implement arg LAX (bug#36398).
* test/lisp/char-fold-tests.el (char-fold--test-multi-lax): New test.
Basil L. Contovounesios [Thu, 4 Jul 2019 18:09:19 +0000 (19:09 +0100)]
; * lisp/net/shr.el (shr-selected-link): Doc fix.
Mattias Engdegård [Sun, 30 Jun 2019 10:53:52 +0000 (12:53 +0200)]
Optimise more inputs to `regexp-opt' (bug#36444)
Use a more precise test to determine whether the input to `regexp-opt'
is safe to optimise when KEEP-ORDER is non-nil, permitting more inputs
to be optimised than before. For example, ("good" "goal" "go") is now
accepted.
* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
More precise test for whether the list is safe w.r.t. KEEP-ORDER.
(regexp-opt--contains-prefix): Remove.
* test/lisp/emacs-lisp/regexp-opt-tests.el: Use lexical-binding.
(regexp-opt-test--permutation, regexp-opt-test--factorial)
(regexp-opt-test--permutations, regexp-opt-test--match-all)
(regexp-opt-test--check-perm, regexp-opt-test--explain-perm)
(regexp-opt-keep-order): Test KEEP-ORDER.
Stefan Monnier [Thu, 4 Jul 2019 14:13:57 +0000 (10:13 -0400)]
* src/coding.c (decode_coding): Improve doc.
Lars Ingebrigtsen [Thu, 4 Jul 2019 14:08:22 +0000 (16:08 +0200)]
In Message, respect Content-Type provided by the user
* lisp/gnus/mml.el (mml-parse-1): Respect any Content-Type
inserted by the user instead of insisting on text/plain.
Alan Mackenzie [Thu, 4 Jul 2019 13:18:51 +0000 (13:18 +0000)]
Fix an infinite loop in c-end-of-macro. Should fix bug #36484
Also fix two faulty regexps, save-match-data, and check c-major-mode-is
'c++-mode where needed.
* lis/progmodes/cc-langs.el (c-last-c-comment-end-on-line-re)
(c-last-open-c-comment-start-on-line-re): Handle repeated *s in regexp
correctly.
* lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-end-of-macro): Protect
the match-data with save-match-data around regexp operations.
(c-end-of-macro): In the loop handling multiline block comments, check a
comment actually is multiline.
* lisp/progmodes/cc-mode.el (c-depropertize-CPP): Only call
c-depropertize-raw-strings-in-region in C++ Mode.
João Távora [Wed, 3 Jul 2019 23:34:26 +0000 (00:34 +0100)]
Fix Flymake's user-visible accessors of diagnostic positions
Diagnostics are supported by overlays, and they can legitimately move
around. So flymake-diagnostic-beg and flymake-diagnostic-end must
look up the overlay positions, not the immutable slots of the
flymake--diag structure, which become stale.
* lisp/progmodes/flymake.el (version): Bump to 1.0.8.
(flymake-diagnostic-beg, flymake-diagnostic-end): Use diag's
overlay.
(flymake-show-diagnostic): Use flymake-diagnostic-end,
flymake-diagnostic-beg.
João Távora [Wed, 3 Jul 2019 23:27:08 +0000 (00:27 +0100)]
Fix Flymake's treatment of region-specific reports
We're supposed to delete intersecting diagnostics in that situation,
but the intersection logic was way off.
* lisp/progmodes/flymake.el (version): Bump to 1.0.7.
(flymake--intersects-p): New helper.
(flymake--handle-report): Fix handling of :region.
Eric Abrahamsen [Wed, 3 Jul 2019 19:53:43 +0000 (12:53 -0700)]
Small fix to writing Gnus dribble change-level entries
* lisp/gnus/gnus-start.el (gnus-group-change-level): PREVIOUS needs to
still be a string when the dribble entry is written, so don't
convert it to an entry until after that's done. Also, we're not
meant to write PREVIOUS itself, we're meant to write the group that
comes _after_ it in the sort-order of gnus-group-list, so do that
instead.
Eli Zaretskii [Wed, 3 Jul 2019 12:55:10 +0000 (15:55 +0300)]
* lisp/hi-lock.el (hi-lock-line-face-buffer): Doc fix. (Bug36448)
Stefan Kangas [Sun, 30 Jun 2019 23:21:47 +0000 (01:21 +0200)]
Add tests for bookmark.el (Bug#36452)
* test/lisp/bookmark-resources/example.txt:
* test/lisp/bookmark-resources/test.bmk:
* test/lisp/bookmark-tests.el: New files.
* lisp/bookmark.el: Minor cleanups.
(bookmark-insert-annotation): Signal error on invalid bookmark.
(bookmark-write-file): Add newline at end of file.
Eli Zaretskii [Wed, 3 Jul 2019 07:31:48 +0000 (10:31 +0300)]
Fix rotation validity test in image.c
* src/image.c (compute_image_rotation): Fix the validity test
for :rotation values. This avoids logging error messages when
no :rotation was provided in the image spec.
Eli Zaretskii [Wed, 3 Jul 2019 07:20:20 +0000 (10:20 +0300)]
Fix compiler warnings due to a recent commit
* src/xdisp.c (expose_window, expose_frame): Avoid compilation
warnings about printing unsigned values with %d.
Michael Albinus [Wed, 3 Jul 2019 07:00:26 +0000 (09:00 +0200)]
Change expected result of a flymake test on emba
* test/lisp/progmodes/flymake-tests.el (different-diagnostic-types):
Test is now passing on emba.gnu.org, too.
Paul Eggert [Tue, 2 Jul 2019 23:09:46 +0000 (16:09 -0700)]
Replace TRACE with redisplay_trace, etc.
This simplifies callers and catches trace printf format errors
even with typical (non-debugging) compiles.
* src/dispextern.h (TRACE) [GLYPH_DEBUG]:
Move definitions to xdisp.c if it’s used only there.
* src/xdisp.c (redisplay_trace): New function, replacing TRACE macro.
(move_trace): New function, replacing TRACE_MOVE macro.
All uses changed.
(dump_glyph): When tracing, don’t use %d to format ptrdiff_t,
or %x to format a pointer.
(expose_frame): Redo trace printfs to avoid interleaved output
on GNU/Linux.
Glenn Morris [Tue, 2 Jul 2019 23:46:25 +0000 (16:46 -0700)]
Change expected result of a flymake test on hydra
* test/lisp/progmodes/flymake-tests.el (different-diagnostic-types):
Test is now passing on hydra.nixos.org, since today.
Stefan Monnier [Tue, 2 Jul 2019 22:54:36 +0000 (18:54 -0400)]
* src/json.c (Fjson_insert): Don't temporarily insert invalid bytes in buffer
Stefan Monnier [Tue, 2 Jul 2019 22:02:51 +0000 (18:02 -0400)]
(Finsert_file_contents): Keep buffer consistent in non-local exit
* src/fileio.c (decide_coding_unwind): Delete function.
(Finsert_file_contents): Don't let invalid multibyte byte sequences
escape when we exit non-locally.
* test/src/fileio-tests.el (fileio-tests--insert-file-interrupt): New test.
Paul Eggert [Tue, 2 Jul 2019 21:50:43 +0000 (14:50 -0700)]
Fix printf formats when DEBUG_TRACE_MOVE
Problem caught by gcc -DDEBUG_TRACE_MOVE -Wformat.
* src/xdisp.c (move_it_in_display_line_to, move_it_to)
(move_it_vertically) [DEBUG_TRACE_MOVE]: Fix printf format typos.
Stefan Monnier [Tue, 2 Jul 2019 20:04:16 +0000 (16:04 -0400)]
* src/insdel.c (insert_from_gap_1): New fun, extracted from insert_from_gap.
(insert_from_gap): Use it.
* src/lisp.h (insert_from_gap_1): Declare it.
* src/json.c (Fjson_insert):
* src/fileio.c (Finsert_file_contents): Use it.
Stefan Monnier [Tue, 2 Jul 2019 19:48:25 +0000 (15:48 -0400)]
* src/coding.c (decode_coding_gap): Remove `chars` argument.
* src/json.c (Fjson_insert):
* src/fileio.c (Finsert_file_contents):
* src/coding.h (decode_coding_gap): Adjust accordingly.
Stefan Monnier [Tue, 2 Jul 2019 19:11:16 +0000 (15:11 -0400)]
* test/src/editfns-tests.el (test-group-name): Accept nil group-name.
Andreas Schwab [Mon, 1 Jul 2019 18:33:57 +0000 (20:33 +0200)]
Correct customize type for gnus-group-customize
* lisp/gnus/gnus-cus.el (gnus-extra-group-parameters): Add more
group parameters used by nnimap.
João Távora [Wed, 15 May 2019 12:10:22 +0000 (13:10 +0100)]
Correctly reindent previous line in electric-indent-mode
Fixes: bug#35254
Do this even when electric-indent-inhibit is t, except when the
newline insertion is being performed by electric-layout-mode.
* lisp/electric.el (electric-indent-post-self-insert-function):
Reindent previous line unless operating under
electric-layout-mode.
(electric-layout-post-self-insert-function-1): Bind
electric-indent-inhibit to 'electric-layout-mode.
* test/lisp/electric-tests.el
(electric-layout-control-reindentation): New test.
João Távora [Fri, 29 Mar 2019 12:27:11 +0000 (12:27 +0000)]
Protect Flymake from being corrupted by backends
A backend building a diagnostic with a nil :type would cause Flymake
to create a diagnostic without an overlay, confusing Flymake's
accounting of overlays and diagnostics
* lisp/progmodes/flymake.el (flymake--highlight-line): Return
non-nil unconditionally.
João Távora [Thu, 28 Mar 2019 18:04:35 +0000 (18:04 +0000)]
More carefully cleanup Flymake C/C++ backend's temp buffers
Sometimes the Flymake process dies by some means that doesn't involve
a sentinel call for the "exit" status, so we clean up the temporary
buffer as soon as we notice it's not process-alive-p anymore.
* lisp/progmodes/flymake-cc.el (flymake-cc): Broaden cleanup
conditions.